package demo;

/**
 * <b><code>ExceptionEnum</code></b>
 * <p/>
 * Description
 * <p/>
 * <b>Creation Time:</b> 2020/7/28 17:55.
 *
 * @author zhongxuelun
 * @since rziomp-be 1.0.0
 */
public enum ExceptionEnum {
    /**
     * 成功
     */
    SUCCESS(200, "成功"),

    /**
     * 失败
     */
    FAIL(505, "失败"),

    /**
     * 未授权
     */
    UNAUTHORIZED(401, "未授权"),

    /**
     * 拒绝访问
     */
    FORBIDDEN(403, "拒绝访问"),

    /**
     * 统一社会信用代码已被绑定
     */
    SOCIAL_CODE_EXITS(100, "统一社会信用代码已被绑定"),

    /**
     * 该项目在此年度已存在
     */
    PROJECT_EXITS(102, "该项目在此年度已存在"),

    /**
     * 该项目进度在此年月已存在
     */
    PROJECT_PROCESS_EXITS(103, "该项目进度在此年度已存在"),

    /**
     * 该重点企业在此年度已存在
     */
    IMPORTANT_ENTERPRISE_EXITS(104, "该重点企业在此年度已存在"),

    /**
     * 请确保所选年度与Excel中相同
     */
    FONT_DIFFERENT_FROM_EXCEL(105, "请确保所选年度与Excel中相同"),

    /**
     * 解析Excel失败
     */
    FAILED_TO_PARSE_EXCEL(106, "解析Excel失败"),

    /**
     * 请在Excel中正确填写年度
     */
    RIGHT_FILL_IN_YEAR(107, "请在Excel中正确填写年度"),

    /**
     * 批量更新失败
     */
    BATCH_UPDATE_FAILED(108, "解析Excel失败"),

    /**
     * 不存在报告信息
     */
    NO_REPORT_INFORMATION(109, "不存在报告信息"),

    /**
     * 错误的归档操作
     */
    ARCHIVE_OPERATION_ERROR(110, "错误的归档操作"),

    /**
     * 不存在未归档的数据
     */
    NO_UNARCHIVED_DATA(111, "不存在未归档的数据"),

    /**
     * 记录未进行上报
     */
    RECORD_NOT_REPORTED(112, "记录未进行上报"),

    /**
     * 记录已归档
     */
    REPORT_ARCHIVED(113, "记录已归档"),

    /**
     * 报告状态不正确
     */
    REPORT_STATUS_INCORRECT(114, "报告状态不正确"),

    /**
     * 修改上报信息失败
     */
    FAILED_MODIFY_REPORT(115, "修改上报信息失败"),

    /**
     * 批量新增报告失败
     */
    FAIL_ADD_REPORTS_IN_BATCHES(116, "批量新增报告失败"),

    /**
     * 保存报告描述失败
     */
    FAIL_SAVE_REPORT_STATEMENT(117, "保存报告描述失败"),

    /**
     * 参数校验异常
     */
    PARAMETER_VERIFICATION_ABNORMAL(118, "参数校验异常"),

    /**
     * 上报失败
     */
    FAIL_REPORT(119, "上报失败"),

    /**
     * 添加监控设备失败
     */
    FAILED_ADD_MONITORING_DEVICE(120, "添加监控设备失败"),

    /**
     * 删除监控设备失败
     */
    FAILED_DELETE_MONITORING_DEVICE(121, "删除监控设备失败"),

    /**
     * 添加监控企业项目失败
     */
    FAILED_ADD_MONITORING_ENTERPRISE_PROJECT(122, "添加监控企业项目失败"),

    /**
     * 删除监控企业项目失败
     */
    FAILED_DELETE_MONITORING_ENTERPRISE_PROJECT(123, "删除监控企业项目失败"),

    /**
     * 修改监控企业项目失败
     */
    FAILED_UPDATE_MONITORING_ENTERPRISE_PROJECT(124, "修改监控企业项目失败"),

    /**
     * 修改监控设备失败
     */
    FAILED_UPDATE_MONITORING_DEVICE(125, "修改监控设备失败"),

    /**
     * 归档数据不一致
     */
    INCONSISTENT_ARCHIVED_DATA(126, "归档数据不一致"),

    /**
     * 添加部门失败
     */
    FAILED_TO_ADD_DEPARTMENT(127, "添加部门失败"),

    /**
     * 更新部门失败
     */
    FAILED_TO_UPDATE_DEPARTMENT(128, "更新部门失败"),

    /**
     * 删除部门失败
     */
    FAILED_TO_DELETE_DEPARTMENT(129, "删除部门失败"),

    /**
     * 添加基础用户失败
     */
    FAILED_TO_ADD_BASE_USER(130, "添加基础用户失败"),

    /**
     * 更新基础用户失败
     */
    FAILED_TO_UPDATE_BASE_USER(131, "更新基础用户失败"),

    /**
     * 删除基础用户失败
     */
    FAILED_TO_DELETE_BASE_USER(132, "删除基础用户失败"),

    /**
     * 添加企业用户失败
     */
    FAILED_TO_ADD_SYSTEM_ENTERPRISE_USER(133, "添加企业用户失败"),

    /**
     * 更新企业用户失败
     */
    FAILED_TO_UPDATE_SYSTEM_ENTERPRISE_USER(134, "更新企业用户失败"),

    /**
     * 删除企业用户失败
     */
    FAILED_TO_DELETE_SYSTEM_ENTERPRISE_USER(135, "删除企业用户失败"),

    /**
     * 添加普通用户失败
     */
    FAILED_TO_ADD_ORDINARY_USER(136, "添加普通用户失败"),

    /**
     * 更新普通用户失败
     */
    FAILED_TO_UPDATE_ORDINARY_USER(137, "更新普通用户失败"),

    /**
     * 删除普通用户失败
     */
    FAILED_TO_DELETE_ORDINARY_USER(138, "删除普通用户失败"),

    /**
     * 相同的统一社会信用代码
     */
    SAME_SOCIAL_CREDIT_CODE(139, "相同的统一社会信用代码"),

    /**
     * 保存注册企业信息失败
     */
    FAILED_SAVE_REGISTERED_COMPANY_INFORMATION(140, "保存注册企业信息失败"),

    /**
     *
     */
    REMOTE_PROCEDURE_CALL_GARNET_REGISTER_EXCEPTION(141, "远程过程调用Garnet注册接口异常"),
    /**
     * 请按正确格式填写所属行业
     */
    WRONG_FORMAT_DOMAIN(150, "请按正确格式填写所属行业"),
    /**
     * 请按正确格式填写所属区县
     */
    WRONG_FORMAT_DISTRICT(151, "所属区县格式不正确"),
    /**
     * 请按正确格式填写所属产业
     */
    WRONG_FORMAT_INDUSTRY(152, "请按正确格式填写所属产业"),
    /**
     * 用户已存在
     */
    SAME_USERNAME(153, "用户已存在"),
    /**
     * 该部门下存在子部门
     */
    EXISTING_PARENT_DEPARTMENT(154, "该部门下存在子部门"),
    /**
     * 不允许重复提交，请稍后再试
     */
    TIP_REPEAT_SUBMIT(155, "不允许重复提交，请稍后再试"),
    /**
     * 请求参数错误
     */
    PARAMS_ERROR(156, "请求参数错误"),
    /**
     * 项目已完工
     */
    PROJECT_FINISHED_REPORT_FAIL(158, "该项目已完工，后续月份无须上报进度信息"),
    /**
     * 项目状态更新失败
     */
    PROJECT_STATUS_UPDATE_FAILED(103, "项目状态更新失败"),
    /**
     * 存在未进行上报的项目进度
     */
    EXIST_UNREPORTED_MONTHS(103, "存在未进行上报的项目进度"),
    /**
     * 项目不能重复完工
     */
    PROJECT_REPEATED_FINISH(104, "项目不能重复完工"),
    /**
     * 超越权限
     */
    BEYOND_AUTHORITY(105, "超越权限"),
    /**
     * 该进度不存在
     */
    PROGRESS_NOT_EXIST(106, "该项目进度不存在"),
    /**
     * 该项目不存在
     */
    PROJECT_NOT_EXIST(107, "该项目不存在"),
    /**
     * 非草稿状态不能进行修改
     */
    CANNOT_EDIT_IF_NOT_IN_DRAFT_STATUS(108, "非草稿状态不能进行修改"),
    /**
     * 错误的统一社会信用代码格式
     */
    WRONG_FORMAT_SOCIAL_CREDIT_CODE(109, "错误的统一社会信用代码格式"),
    /**
     * 统计年月错误
     */
    STATISTICAL_YEAR_MONTH_ERROR(110, "统计年月错误"),
    /**
     * 详细地址为空
     */
    DETAILED_ADDRESS_BLANK(111, "详细地址为空"),
    /**
     * 企业简介为空
     */
    COMPANY_PROFILE_BLANK(112, "企业简介为空"),
    /**
     * 所属年月为空
     */
    STATISTICS_YEAR_BLANK(113, "所属年月为空"),
    /**
     * 企业名称为空
     */
    ENTERPRISE_NAME_BLANK(114, "企业名称为空"),
    /**
     * 存在未填写的必填项
     */
    REQUIRED_FIELDS_ARE_NOT_FILLED(115, "存在未填写的必填项"),
    /**
     * 政策发布修改失败
     */
    POLICY_RELEASE_MODIFICATION_FAILED(116, "政策发布修改失败,id不存在"),
    /**
     * 已存在相同的企业名称或项目名称
     */
    MONITORING_ENTERPRISE_PROJECT_EXIST(117, "已存在相同的企业名称或项目名称"),
    /**
     * 已存在相同的部门
     */
    SYSTEM_DEPARTMENT_EXIST(118, "已存在相同的部门"),
    /**
     * 该政策不存在
     */
    POLICY_RELEASE_NOT_EXIST(119, "该政策不存在"),
    /**
     * 该项目进度不存在
     */
    PROJECT_PROCESS_NOT_EXIST(120, "该项目进度不存在"),
    /**
     * 不允许修改进度上报时间
     */
    NOT_ALLOWED_MODIFY_PROGRESS_REPORT_TIME(121, "不允许修改进度上报时间"),
    /**
     * 不允许修改所属项目ID
     */
    NOT_ALLOWED_MODIFY_BELONG_PROJECT_ID(122, "不允许修改所属项目ID"),
    /**
     * 非区县退回状态的记录不允许进行修改
     */
    PROJECT_PROCESS_STATUS_ERROR(123, "非区县退回状态的记录不允许进行修改"),
    /**
     * 再次上报项目进度失败
     */
    PROJECT_PROCESS_UPDATE_FAILED(124, "再次上报项目进度失败"),
    /**
     * 监控企业名称或项目名称
     */
    MONITORING_ENTERPRISE_PROJECT_NAME_UNCHANGED(125, "监控企业名称或项目名称,修改前后相同"),
    /**
     * EXCEL 表格中数据行为空
     */
    EXCEL_RECORDS_IS_EMPTY(126, "EXCEL 表格中数据行为空"),
    /**
     * 供给信息产品名称为空
     */
    SUPPLY_INFORMATION_PRODUCT_NAME_IS_EMPTY(127, "供给信息产品名称为空"),
    /**
     * 需求信息产业链环节为空
     */
    INDUSTRY_CHAIN_LINKS_IS_EMPTY(128, "需求信息产业链环节为空"),
    /**
     * 需求信息需求名称为空
     */
    DEMAND_INFORMATION_DEMAND_NAME_IS_EMPTY(129, "需求信息需求名称为空"),
    /**
     * 发布类型错误
     */
    PUBLISH_TYPE_ERROR(130, "发布类型错误"),
    /**
     * 该企业/项目存在设备信息，不能删除
     */
    FAILED_DELETE_MONITORING_ENTERPRISE_PROJECT_BECAUSE_EXIST_MONITORING_DEVICE(131, "该企业/项目存在设备信息，不能删除"),
    /**
     * 错误的信息类型
     */
    INFORMATION_TYPE_ERROR(132, "错误的信息类型"),
    /**
     * 项目上报状态更新失败
     */
    PROJECT_REPORT_STATUS_UPDATE_FAILED(133, "项目上报状态更新失败"),
    /**
     * 项目进度新增失败
     */
    PROJECT_PROCESS_ADD_FAILED(134, "项目进度新增失败"),
    /**
     * 该项目存在进度上报信息,不能修改
     */
    THIS_PROJECT_EXIST_PROJECT_PROGRESS_FAIL_UPDATE(135, "该项目存在进度上报信息,不能修改"),
    /**
     * 该重点企业不存在
     */
    ENTERPRISE_DOES_NOT_EXIST(136, "该重点企业不存在"),
    /**
     * 该重点企业下存在上报记录,不能删除
     */
    ENTERPRISE_EXIST_REPORT_DESCRIPTION_FAIL_TO_DELETE(137, "该重点企业下存在上报记录,不能删除"),
    /**
     * 删除重点企业失败
     */
    ENTERPRISE_FAIL_TO_DELETE(138, "删除重点企业失败"),
    /**
     * 该重点项目下存在进度上报记录,不能删除
     */
    IMPORTANT_PROJECT_EXITS_PROJECT_PROGRESS_FAIL_TO_DELETE(139, "该重点项目下存在进度上报记录,不能删除"),
    /**
     * 该重点项目不存在
     */
    IMPORTANT_PROJECT_NOT_EXITS(140, "该重点项目不存在"),
    /**
     * 删除重点项目失败
     */
    IMPORTANT_PROJECT_FAIL_TO_DELETE(141, "删除重点项目失败"),
    /**
     * 该重点项目进度不存在
     */
    IMPORTANT_PROJECT_PROGRESS_NOT_EXITS(142, "该重点项目进度不存在"),
    /**
     * 该重点项目下存在已完工的进度上报记录
     */
    IMPORTANT_PROJECT_EXITS_FINISH_PROJECT_PROGRESS_FAIL_TO_ADD(143, "该重点项目下存在已完工的进度上报记录"),
    /**
     * 上传文件大小超出限制20M
     */
    MAXUPLOADSIZE(144, "上传文件大小超出限制20M"),
    /**
     * 撤回归档失败
     */
    FAILED_TO_WITHDRAW_ARCHIVE(145, "撤回归档失败"),
    /**
     * 保存导入失败详细信息失败
     */
    FAILED_TO_SAVE_IMPORT_FAILURE_DETAILS(146, "保存导入失败详细信息失败"),
    /**
     * 重点项目导入失败
     */
    FAIL_TO_IMPORT_IMPORTANT_ENTERPRISE(147, "重点企业导入失败"),
    /**
     * 重点项目导入失败
     */
    FAIL_TO_IMPORT_IMPORTANT_PROJECT(148, "重点项目导入失败"),
    /**
     * 请使用正确的导入模板
     */
    PLEASE_USE_THE_CORRECT_IMPORT_TEMPLATE(149, "请使用正确的导入模板");

    private final Integer code;
    private String message;

    ExceptionEnum(Integer code, String message) {
        this.code = code;
        this.message = message;
    }

    public Integer getCode() {
        return code;
    }


    public String getMessage() {
        return message;
    }

}
